using System;
using System.Collections.Generic;
using ns26;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("PopupDisplayManager")]
	public class PopupDisplayManager : MonoBehaviour
	{
		public Transform m_TavernBrawlRewardsBone => method_3<Transform>("m_TavernBrawlRewardsBone");

		public List<Reward> m_rewards => method_3<Class271<Reward>>("m_rewards")?.method_25();

		public List<Reward> m_outOfBandCardRewards => method_3<Class271<Reward>>("m_outOfBandCardRewards")?.method_25();

		public List<Reward> m_genericRewards => method_3<Class271<Reward>>("m_genericRewards")?.method_25();

		public List<Achievement> m_completedAchieves => method_3<Class271<Achievement>>("m_completedAchieves")?.method_25();

		public int m_numRewardsToLoad => method_2<int>("m_numRewardsToLoad");

		public bool m_isShowing => method_2<bool>("m_isShowing");

		public bool m_readyToShowPopups => method_2<bool>("m_readyToShowPopups");

		public bool IsShowing => method_11<bool>("get_IsShowing", Array.Empty<object>());

		public bool IsShowingOrWillShow => method_11<bool>("get_IsShowingOrWillShow", Array.Empty<object>());

		public PopupDisplayManager(IntPtr address, string className)
			: base(address, className)
		{
		}

		public PopupDisplayManager(IntPtr address)
			: this(address, "PopupDisplayManager")
		{
		}

		public static PopupDisplayManager Get()
		{
			return MonoClass.smethod_15<PopupDisplayManager>(TritonHs.MainAssemblyPath, "", "PopupDisplayManager", "Get", Array.Empty<object>());
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void Start()
		{
			method_8("Start");
		}

		public void Update()
		{
			method_8("Update");
		}

		public void Initialize()
		{
			method_8("Initialize");
		}

		public void WillReset()
		{
			method_8("WillReset");
		}

		public void ClearSeenNotices()
		{
			method_8("ClearSeenNotices");
		}

		public void ReadyToShowPopups()
		{
			method_8("ReadyToShowPopups");
		}

		public bool RewardsLeftToShow()
		{
			return method_11<bool>("RewardsLeftToShow", Array.Empty<object>());
		}

		public void ShowAnyOutstandingPopups()
		{
			method_9("ShowAnyOutstandingPopups", new Class276.Enum20[0]);
		}

		public void FireContinueListeners()
		{
			method_8("FireContinueListeners");
		}

		public void FireAllPopupsShownEvents()
		{
			method_8("FireAllPopupsShownEvents");
		}

		public void FireAllCompletedQuestShownListeners(int achieveId)
		{
			method_8("FireAllCompletedQuestShownListeners", achieveId);
		}

		public void OnRewardObjectLoaded(Reward reward, object callbackData)
		{
			method_8("OnRewardObjectLoaded", reward, callbackData);
		}

		public void OnOutOfBandCardRewardObjectLoaded(Reward reward, object callbackData)
		{
			method_8("OnOutOfBandCardRewardObjectLoaded", reward, callbackData);
		}

		public void OnGenericRewardObjectLoaded(Reward reward, object callbackData)
		{
			method_8("OnGenericRewardObjectLoaded", reward, callbackData);
		}

		public void DisplayLoadedRewardObject(Reward reward, object callbackData)
		{
			method_8("DisplayLoadedRewardObject", reward, callbackData);
		}

		public void PositionReward(Reward reward)
		{
			method_8("PositionReward", reward);
		}

		public bool ShowNextCompletedQuest()
		{
			return method_11<bool>("ShowNextCompletedQuest", Array.Empty<object>());
		}

		public bool ShowNextUnAckedReward()
		{
			return method_11<bool>("ShowNextUnAckedReward", Array.Empty<object>());
		}

		public bool ShowNextUnAckedGenericReward()
		{
			return method_11<bool>("ShowNextUnAckedGenericReward", Array.Empty<object>());
		}

		public bool ShowNextUnAckedOutOfBandCardReward()
		{
			return method_11<bool>("ShowNextUnAckedOutOfBandCardReward", Array.Empty<object>());
		}

		public bool ShowNextTavernBrawlReward()
		{
			return method_11<bool>("ShowNextTavernBrawlReward", Array.Empty<object>());
		}

		public Vector3 GetRewardLocalPos()
		{
			return method_11<Vector3>("GetRewardLocalPos", Array.Empty<object>());
		}

		public Vector3 GetRewardScale()
		{
			return method_11<Vector3>("GetRewardScale", Array.Empty<object>());
		}

		public Vector3 GetRewardPunchScale()
		{
			return method_11<Vector3>("GetRewardPunchScale", Array.Empty<object>());
		}

		public void UpdateRewards()
		{
			method_8("UpdateRewards");
		}

		public void OnRewardShown(object callbackData)
		{
			method_8("OnRewardShown", callbackData);
		}

		public void ShowTavernBrawlRewardsWhenReady_DoneCallback()
		{
			method_8("ShowTavernBrawlRewardsWhenReady_DoneCallback");
		}

		public void OnRewardClicked(Reward reward, object userData)
		{
			method_8("OnRewardClicked", reward, userData);
		}

		public void OnBannerClosed()
		{
			method_8("OnBannerClosed");
		}

		public bool CanShowPopups()
		{
			return method_11<bool>("CanShowPopups", Array.Empty<object>());
		}

		public void OnGenericRewardUpdated(long rewardNoticeId, object userData)
		{
			method_8("OnGenericRewardUpdated", rewardNoticeId, userData);
		}
	}
}
